home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / By the Book / Learn C++ (CodeWarrior) / Chap 04.06 - newTester / newTester.cp < prev    next >
Text File  |  1995-10-20  |  528b  |  39 lines

  1. #include <iostream.h>
  2. #include <new.h>
  3.  
  4. void    NewFailed();
  5.  
  6. char    gDone = false;
  7. char    *gSpareBlockPtr = 0;
  8.  
  9. int    main()
  10. {
  11.     char    *myPtr;
  12.     long    numBlocks = 0;
  13.     
  14.     cout << "Installing NewHandler...\n";
  15.     
  16.     set_new_handler( NewFailed );
  17.     gSpareBlockPtr = new char[20480];
  18.     
  19.     while ( gDone == false )
  20.     {
  21.         myPtr = new char[1024];
  22.         numBlocks++;
  23.     }
  24.     
  25.     cout << "Number of blocks allocated: " << numBlocks;
  26.     
  27.     return 0;
  28. }
  29.  
  30. void    NewFailed()
  31. {
  32.     if ( gSpareBlockPtr != 0 )
  33.     {
  34.         delete gSpareBlockPtr;
  35.         gSpareBlockPtr = 0;
  36.     }
  37.     
  38.     gDone = true;
  39. }